import wx from 'jweixin-module'
import Request from '../uilt/request.js'

function sdkConfig(jsApiName) {
	return new Promise(async (reslove, reject) => {
		const {
			data
		} = await Request.http({
			url: 'api/Answer/getWxShare',
			data:{
				// share_url:'http://wjdc.zxkjnc.com/h5/'
				share_url:window.location.href.split('#/')[0]
			}
		})
		console.log('data',window.location.href,data)
		wx.config({
			debug: false, // 开启调试模式,调用的所有 api 的返回值会在客户端 alert 出来，若要查看传入的参数，可以在 pc 端打开，参数信息会通过 log 打出，仅在 pc 端时才会打印。
			appId: 'wx6cfa9e1c68da9ea8', // 必填，公众号的唯一标识
			timestamp: data.timeStamp, // 必填，生成签名的时间戳
			nonceStr: data.nonceStr, // 必填，生成签名的随机串
			signature: data.sign, // 必填，签名
			jsApiList: [jsApiName,
			'onMenuShareTimeline',
			'onMenuShareAppMessage',
			'updateAppMessageShareData',
			'updateTimelineShareData',
			'scanQRCode'] // 必填，需要使用的 JS 接口列表
		});
		wx.ready(function() {
			// config信息验证后会执行 ready 方法，所有接口调用都必须在 config 接口获得结果之后，config是一个客户端的异步操作，所以如果需要在页面加载时就调用相关接口，则须把相关接口放在 ready 函数中调用来确保正确执行。对于用户触发时才调用的接口，则可以直接调用，不需要放在 ready 函数中。
			reslove(true)
		});
		wx.error(function() {
			//sdk验证失败
			reject(false)
		})
	})
}
//获取用户位置信息
export default {
	wxGetLocation() {
		return new Promise((reslove, reject) => {
			sdkConfig('getLocation').then(res => {
				wx.getLocation({
					type: 'wgs84', // 默认为wgs84的 gps 坐标，如果要返回直接给 openLocation 用的火星坐标，可传入'gcj02'
					success: function(res) {
						var latitude = res.latitude; // 纬度，浮点数，范围为90 ~ -90
						var longitude = res.longitude; // 经度，浮点数，范围为180 ~ -180。
						var speed = res.speed; // 速度，以米/每秒计
						var accuracy = res.accuracy; // 位置精度
						reslove({
							latitude,
							longitude,
							speed,
							accuracy
						})
					},
					fail: function(err) {
						reject()
					}
				});
			}).catch(err => {
				reject()
			})
		})
	},
	//扫码
	wxScanQRCode() {
		return new Promise((reslove, reject) => {
			sdkConfig('scanQRCode').then(res => {
				console.log(res,'res')
				wx.scanQRCode({
				  needResult: 1, // 默认为0，扫描结果由微信处理，1则直接返回扫描结果，
				  scanType: ["qrCode"], // 可以指定扫二维码还是一维码，默认二者都有
				  success: function (res) {
					console.log(11,res)
					reslove(res)
				  }
				});
			
			}).catch(err => {
				console.log(err,'err')
				reject()
			})
		})
	},

}

